package com.ibeeking.gmc.global.service.common.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;

/**
 * @ClassName TimeTaskParam
 * @Description
 * @Author ibeeking
 * @Date 2020-12-23 13:43
 **/
@Data
public class TimeTaskVO implements Serializable {
    private static final long serialVersionUID = 1L;

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;
    /**
     * 行业类型:mall=电商平台；mdi=制造业
     */
    private String industry;
    private String industryName;
    /**
     * 任务类型，1-一次性任务，2-长久性任务
     */
    private Integer jobType;
    private String jobTypeName;
    /**
     * 任务名称
     */
    private String jobName;

    /**
     * 业务标识健
     */
    private String businessKey;
    /**
     * 路由策略
     */
    private String routeStrategy;
    /**
     * 运行模式
     */
    private String glueType;
    /**
     * 执行时间表达式
     */
    private String jobCron;

    /**
     * 执行器，任务Handler名称
     */
    private String executorHandler;
    /**
     * 执行器，任务参数
     */
    private String executorParam;
    /**
     * 执行器，阻塞处理策略
     */
    private String executorBlockStrategy;
    /**
     * 任务执行超时时间，单位秒
     */
    private Integer executorTimeout;
    /**
     * 失败重试次数
     */
    private Integer executorFailRetryCount;
    /**
     * 任务调度状态：0-停止，1-运行
     */
    private Integer triggerStatus;
    /**
     * 备注
     */
    private String remark;

    /**
     * 执行器class
     */
    private String jobClazz;

    /**
     * 执行器method
     */
    private String jobCreateMethod;

    /**
     * 执行器method
     */
    private String jobDelMethod;
    /**
     * 是否启用，1-启用，0-禁用
     */
    private Integer publishStatus;
    private String publishStatusName;
}
